Modifying gameplay parameters

ABSTRACT

A computer implemented method for modifying a limit value determining the number of moves available to a player in a level of a computer implemented game and maintaining this setting for subsequent play of the level. The method comprises using a counter to change a move count in response to a user input defining a move in the game, wherein no additional moves can be made if the number of moves made reaches a first limit value; responsive to further user input, providing a first set of further moves; and storing information associated with said first set of further moves such that when said game is played again, a number of possible moves comprises the first limit value of moves and said first set of further moves.

CROSS-REFERENCE TO RELATED APPLICATIONS

This is a continuation of U.S. application Ser. No. 15/014,480, filed onFeb. 3, 2016, the entire contents of which is fully incorporated hereinby reference.

FIELD OF THE INVENTION

Some embodiments may relate to controlling of parameters in a computerimplemented game. Some embodiments may relate to computer devicesconnected in a communications network with at least one server ordatabase for storing the value of the parameters.

BACKGROUND OF THE INVENTION

There are many technical challenges and technical considerations facingdesigners of computer games executed on user or computer devices inwhich the games have a number of parameters which dictate gameplaycharacteristics.

It may be possible in a gameplay environments for users to make aselection as to their preferred gameplay experience. The advent of theinternet, and other wide area networks, has led to a proliferation ofconnected user or client devices playing casual games, typically forshort periods of time. It can be problematic for a user to find or evenbe aware of the choices or gameplay options available and to apply thesepreferences whenever they begin a new game or level of a game. Simplyoffering different gameplay characteristics as options may take noaccount of previous selections, or user preferences.

One technical challenge can involve allowing a game to be fun andcompelling even when there is limited display resource available, suchas when a game is being played on a smartphone, tablet or otherminicomputer. This may mean a small screen and/or limited processingcapacity and/or limited memory and/or limited power.

Another significant challenge is that of user engagement. Engagementinvolves designing gameplay to be engaging and rewarding to players.This typically requires games to be easily understood at their simplestor introductory levels, providing rewarding gameplay with quite simplegame mechanics, but becoming progressively more challenging so thatplayers are not bored, but remain engaged and develop rewarding skills.Effective engagement requires various forms of feedback to reinforceplayer sense of success and accomplishment.

This patent specification describes not only various ideas andfunctions, but also their creative expression. A portion of thedisclosure of this patent document therefore contains material to whicha claim for copyright is made and notice is hereby given: CopyrightKing.com Limited 2015 (pursuant to 17 U.S.C. 401). A claim to copyrightprotection is made to all screen shots, icons, look and feel and allother protectable expression associated with the games illustrated anddescribed in this patent specification.

The copyright owner has no objection to the facsimile reproduction byanyone of the patent document or the patent disclosure, as it appears inthe Patent and Trademark Office patent file or records, but reserves allother copyright rights whatsoever. No express or implied license underany copyright whatsoever is therefore granted.

SUMMARY OF THE INVENTION

According to a first aspect, there is provided a computer implementedmethod, the method being performed in a computing device comprising oneor more processors, a counter, at least one memory, a display configuredto display computer game graphics for a computer game, the method beingperformed by executing computer code on the one or more processors toperform the steps of: controlling the display to show a game area, thegame area having a plurality of game objects configured to be controlledin response to user input; using the counter to change a move count inresponse to a user input associated with at least one of the pluralityof game objects defining a move of said game, wherein no additionalmoves can be made if the number of moves made reaches a first limitvalue; responsive to further user input, providing a first set offurther moves; and storing information associated with said first set offurther moves such that when said game is played again, a number ofpossible moves comprises the first limit value of moves and said firstset of further moves.

The computer game may comprise a plurality of levels, said first set offurther moves being provided for a particular level.

The method may further comprise storing information associated with saidfirst set of further moves in association with information on theparticular level.

The method may further comprise storing said information associated withsaid first set of further moves in association with identificationinformation associated with the user.

The method may further comprise causing said information to be sent to aserver for storing in a server side database.

The method may further comprise displaying a message on said displaywhen a number of remaining moves of said first limit is a predeterminedvalue, said message providing information associated with obtaining ofsaid first set of further moves.

The method may further comprise displaying said message with an iconwhich is selectable by a user input, said first set of further movesbeing provided in response to selection of said icon.

The predetermined value may be zero.

The method may further comprise, in a subsequent playing of said game:controlling the display to show the game area; using the counter tochange the move count in response to user input associated with at leastone of the plurality of game objects making a move, wherein no moves canbe made if the number of moves reaches a first limit value in additionto the first set of further moves; responsive to second further userinput, providing a second set of further moves; and storing informationassociated with said second set of further moves such that when saidgame is played again a number of possible moves comprises the firstlimit value of moves, said first set of further moves and second set offurther moves.

The first set of further moves may comprise one or more further moves.

According to a second aspect, there is provided a computing deviceadapted to play a computer game, the device including one or moreprocessors, a counter, at least one memory, a display configured todisplay computer game graphics for a computer game, and in which the oneor more processors execute computer code to perform the steps of:controlling the display to show a game area, the game area having aplurality of game objects configured to be controlled in response touser input; using the counter to change a move count in response to auser input associated with at least one of the plurality of game objectsdefining a move of said game, wherein no additional moves can be made ifthe number of moves made reaches a first limit value; responsive tofurther user input, providing a first set of further moves; and storinginformation associated with said first set of further moves such thatwhen said game is played again, a number of possible moves comprises thefirst limit value of moves and said first set of further moves.

The computer game may comprise a plurality of levels, said first set offurther moves being provided for a particular level.

The one or more processors may be further configured to execute computercode to perform the step of storing information associated with saidfirst set of further moves in association with information on theparticular level.

The one or more processors may be further configured to execute computercode to perform the step of storing said information associated withsaid first set of further moves in association with identificationinformation associated with the user.

The one or more processors may be further configured to execute computercode to perform the step of causing said information to be sent to aserver for storing in a server side database.

The one or more processors may be further configured to execute computercode to perform the step of controlling the display to display a messageon said display when a number of remaining moves of said first limit isa predetermined value, said message providing information associatedwith obtaining of said first set of further moves.

The one or more processors may be further configured to execute computercode to perform the step of controlling the display to display saidmessage with an icon which is selectable by a user input, said first setof further moves being provided in response to selection of said icon.

The predetermined value may be zero.

The one or more processors may be further configured to execute computercode to perform the steps, in a subsequent playing of said game, ofcontrolling the display to display controlling the display to show thegame area; using the counter to change the move count in response touser input associated with at least one of the plurality of game objectsmaking a move, wherein no moves can be made if the number of movesreaches a first limit value in addition to the first set of furthermoves; responsive to second further user input, providing a second setof further moves; and storing information associated with said secondset of further moves such that when said game is played again a numberof possible moves comprises the first limit value of moves, said firstset of further moves and second set of further moves.

According to a third aspect, there is provided a non-transitory computerreadable medium encoded with instructions for controlling a computingdevice comprising one or more processors, a counter, at least onememory, a display configured to display computer game graphics for acomputer game, and in which the instructions are executed on the one ormore processors to perform the steps of: controlling the display to showa game area, the game area having a plurality of game objects configuredto be controlled in response to user input; using the counter to changea move count in response to a user input associated with at least one ofthe plurality of game objects defining a move of said game, wherein noadditional moves can be made if the number of moves made reaches a firstlimit value; responsive to further user input, providing a first set offurther moves; and storing information associated with said first set offurther moves such that when said game is played again, a number ofpossible moves comprises the first limit value of moves and said firstset of further moves.

The computer game may comprise a plurality of levels, said first set offurther moves being provided for a particular level.

The instructions may be executed on the one or more processors toperform the further step of storing information associated with saidfirst set of further moves in association with information on theparticular level.

The instructions may be executed on the one or more processors toperform the further step of storing said information associated withsaid first set of further moves in association with identificationinformation associated with the user.

The instructions may be executed on the one or more processors toperform the further step of causing said information to be sent to aserver for storing in a server side database.

The instructions may be executed on the one or more processors toperform the further step of controlling the display to display a messageon said display when a number of remaining moves of said first limit isa predetermined value, said message providing information associatedwith obtaining of said first set of further moves.

The instructions may be executed on the one or more processors toperform the further step of controlling the display to display saidmessage with an icon which is selectable by a user input, said first setof further moves being provided in response to selection of said icon.

The predetermined value may be zero.

The instructions may be executed on the one or more processors toperform the further steps, in a subsequent playing of said game, of:controlling the display to display controlling the display to show thegame area; using the counter to change the move count in response touser input associated with at least one of the plurality of game objectsmaking a move, wherein no moves can be made if the number of movesreaches a first limit value in addition to the first set of furthermoves; responsive to second further user input, providing a second setof further moves; and storing information associated with said secondset of further moves such that when said game is played again a numberof possible moves comprises the first limit value of moves, said firstset of further moves and second set of further moves.

According to a fourth aspect, there is provided a computer implementedmethod, the method being performed in a server comprising one or moreprocessors having access to a network and a database, the server beingconfigured to communicate over the network with a user device adapted toplay a computer game, said game having a limit value determining amaximum number of permissible moves, the method being performed byexecuting computer code on the one or more processors to perform thesteps of: receiving from a user device a message, the message comprisinguser identification information and updated limit information; accessingin the database a memory location associated with the useridentification information; and storing information associated with theupdated limit information in the database in the memory location.

The method may further comprise: transmitting a message to the userdevice, said message for configuring the user device such that when saidgame is played again, a number of possible moves is determined by theupdated limit information.

According to a fifth aspect, there is provided a server having access toa network and a database, the server being configured to communicateover the network with a user device adapted to play a computer gamehaving a limit value determining a maximum number of permissible moves,the server comprising one or more processors configured to executeinstructions to perform the steps of: receiving from a user device amessage, the message comprising user identification information andupdated limit information; accessing in the database a memory locationassociated with the user identification information; and storinginformation associated with the updated limit information in thedatabase in the memory location.

The one or more processors may be further configured to execute computercode to perform the step of: transmitting a message to the user device,said message for configuring the user device such that when said game isplayed again, a number of possible moves is determined by the updatedlimit information

According to a sixth aspect, there is provided a computer implementedmethod, the method being performed in a computing device comprising oneor more processors, a timer, at least one memory, a display configuredto display computer game graphics for a computer game, the method beingperformed by executing computer code on the one or more processors toperform the steps of: controlling the display to show a game area, thegame area having a plurality of game objects configured to be controlledin response to user input making a move; using the timer to determine anamount of time elapsed during play of a level of the game, wherein nofurther moves can be made if the amount of time elapsed reaches a firstamount of time; responsive to user input, providing a second amount oftime; and storing information associated with said second amount of timesuch that when said game is played again, a time limit for the levelcomprises the first amount of time and the second amount of time.

The computer game may comprise a plurality of levels, said second amountof time being provided for a particular level.

The method may further comprise storing information associated with thesecond amount of time in association with information on the particularlevel.

The method may further comprise displaying a message on said displaywhen an amount of time elapsed is a predetermined value, said messageproviding information associated with obtaining of said second amount oftime.

The method may further comprise displaying said message with an iconwhich is selectable by a user input, said second amount of time beingprovided in response to selection of said icon.

The predetermined value may be zero.

The method may further comprise in a subsequent playing of said game:controlling the display to show the game area; using the timer todetermine an amount of time elapsed during play of a level of the game,wherein no moves can be made if the amount of time elapsed reaches atime limit for the level comprising the first amount of time and thesecond amount of time; responsive to second further user input,providing a third amount of time; and storing information associatedwith said third amount of time such that when said game is played againa time limit comprises the first amount of time, the second amount oftime, and the third amount of time.

The method may further comprise storing said information associated withsaid second amount of time in association with identificationinformation associated with the user.

In one embodiment, the method further comprises causing said informationto be sent to a server for storing in a server side database.

According to a seventh aspect, there is provided a computing deviceadapted to play a computer game, the device including one or moreprocessors, a timer, at least one memory, a display configured todisplay computer game graphics for a computer game, and in which the oneor more processors execute computer code to perform the steps of:controlling the display to show a game area, the game area having aplurality of game objects configured to be controlled in response touser input making a move; using the timer to determine an amount of timeelapsed during play of a level of the game, wherein no further moves canbe made if the amount of time elapsed reaches a first amount of time;responsive to user input, providing a second amount of time; and storinginformation associated with said second amount of time such that whensaid game is played again, a time limit for the level comprises thefirst amount of time and the second amount of time.

The computer game may comprise a plurality of levels, said second amountof time being provided for a particular level.

The one or more processors may be further configured to execute computercode to perform the step of storing information associated with thesecond amount of time in association with information on the particularlevel.

The one or more processors may be further configured to execute computercode to perform the step of displaying a message on said display when anamount of time elapsed is a predetermined value, said message providinginformation associated with obtaining of said second amount of time.

The one or more processors may be further configured to execute computercode to perform the step of displaying said message with an icon whichis selectable by a user input, said second amount of time being providedin response to selection of said icon.

The predetermined value may be zero.

The one or more processors may be further configured to execute computercode to perform the steps, in a subsequent playing of said game, of:controlling the display to show the game area; using the timer todetermine an amount of time elapsed during play of a level of the game,wherein no moves can be made if the amount of time elapsed reaches atime limit for the level comprising the first amount of time and thesecond amount of time; responsive to second further user input,providing a third amount of time; and storing information associatedwith said third amount of time such that when said game is played againa time limit comprises the first amount of time, the second amount oftime, and the third amount of time.

The one or more processors may be further configured to execute computercode to perform the step of storing said information associated withsaid second amount of time in association with identificationinformation associated with the user.

The one or more processors may be further configured to execute computercode to perform the step of causing said information to be sent to aserver for storing in a server side database.

According to an eighth aspect, there is provided a non-transitorycomputer readable medium encoded with instructions for controlling acomputing device comprising one or more processors, a timer, at leastone memory, a display configured to display computer game graphics for acomputer game, and in which the instructions are executed on the one ormore processors to perform the steps of: controlling the display to showa game area, the game area having a plurality of game objects configuredto be controlled in response to user input making a move; using thetimer to determine an amount of time elapsed during play of a level ofthe game, wherein no further moves can be made if the amount of timeelapsed reaches a first amount of time; responsive to user input,providing a second amount of time in addition to said first amount oftime; and storing information associated with said second amount of timesuch that when said game is played again, a time limit for the levelcomprises the first amount of time and the second amount of time.

The computer game may comprise a plurality of levels, said second amountof time being provided for a particular level.

The instructions may be executed on the one or more processors toperform the further step of storing information associated with thesecond amount of time in association with information on the particularlevel.

The instructions may be executed on the one or more processors toperform the further step of displaying a message on said display when anamount of time elapsed is a predetermined value, said message providinginformation associated with obtaining of said second amount of time.

The instructions may be executed on the one or more processors toperform the further step of displaying said message with an icon whichis selectable by a user input, said second amount of time being providedin response to selection of said icon.

The predetermined value may be zero.

The instructions may be executed on the one or more processors toperform the further steps, in a subsequent playing of said game, of:controlling the display to show the game area; using the timer todetermine an amount of time elapsed during play of a level of the game,wherein no moves can be made if the amount of time elapsed reaches atime limit for the level comprising the first amount of time and thesecond amount of time; responsive to second further user input,providing a third amount of time; and storing information associatedwith said third amount of time such that when said game is played againa time limit comprises the first amount of time, the second amount oftime, and the third amount of time.

The instructions may be executed on the one or more processors toperform the further step of storing said information associated withsaid second amount of time in association with identificationinformation associated with the user.

The instructions may be executed on the one or more processors toperform the further step of causing said information to be sent to aserver for storing in a server side database.

According to a ninth aspect, there is provided a computer implementedmethod, the method being performed in a server comprising one or moreprocessors having access to a network and a database, the server beingconfigured to communicate over the network with a user device adapted toplay a computer game having a time limit value determining a maximumamount of time, the method being performed by executing computer code onthe one or more processors to perform the steps of: receiving from auser device a message, the message comprising user identificationinformation and updated time limit information; accessing in thedatabase a memory location associated with the user identificationinformation; storing information associated with an updated time limitinformation in the database in the memory location.

The method may further comprise: transmitting a message to the userdevice, said message for configuring the user device such that when saidgame is played again, a time limit is determined by the updated timelimit information.

According to a tenth aspect, there is provided a server having access toa network and a database, the server being configured to communicateover the network with a user device adapted to play a computer gamehaving a time limit value determining a maximum amount of time, theserver comprising one or more processors configured to executeinstructions to perform the steps of: receiving from a user device amessage, the message comprising user identification information andupdated time limit information; accessing in the database a memorylocation associated with the user identification information; storinginformation associated with an updated time limit information in thedatabase in the memory location.

The one or more processors may be further configured to execute computercode to perform the step of: transmitting a message to the user device,said message for configuring the user device such that when said game isplayed again, a time limit is determined by the updated time limitinformation.

BRIEF DESCRIPTION OF DRAWINGS

To understand some embodiments, reference will now be made by way ofexample only to the accompanying drawings, in which:

FIG. 1 shows an example client or user device of an embodiment;

FIG. 2 illustrates an example system in which some embodiments may beprovided;

FIG. 3 illustrates a schematically shows the functional blocks of anembodiment, which may enable game play.

FIG. 4 depicts an example game screen showing a level of a gameaccording to an embodiment;

FIG. 5 depicts an example game screen showing a level of a gameaccording to an embodiment;

FIG. 6 illustrates a flowchart of a method according to an embodiment;

FIG. 7 illustrates a flowchart of a method according to an embodiment;

FIG. 8 illustrates an example of a data structure that may be used tostore a set of parameters associated with a user account for determininggameplay characteristics.

DETAILED DESCRIPTION OF SOME EMBODIMENTS

A schematic view of a client or user device 100 according to anembodiment is shown in FIG. 1. All of the blocks shown are implementedby suitable circuitry. The blocks may be implemented in hardware and/orsoftware. The user device may have a controller 110. The controller 110has one or more processors 115 and one or more memories 120. Thecontroller 110 is also shown as having a graphics controller 125 and asound controller 130. It should be appreciated that one or other or bothof the graphics controller 125 and sound controller 130 may be providedby the one or more processors 115.

The graphics controller 125 is configured to provide a video output 135.The sound controller 130 is configured to provide an audio output 140.The controller 110 has an interface 145 allowing the device to be ableto communicate with a network 150 such as the Internet or othercommunication infrastructure.

The video output 135 is provided to a display 155. The audio output 140is provided to an audio device 160 such as a speaker and/or earphone(s).

The device 100 has an input device 165. The input device 165 can takeany suitable format and can be one or more of a keyboard, mouse, touchscreen, joystick or game controller. It should be appreciated that thedisplay 155 may in some embodiments also provide the input device 165 byway of an integrated touch screen for example.

The blocks of the controller 110 are configured to communicate with eachother by an interconnect such as a bus or any other suitableinterconnect and/or by point to point communication.

It should be appreciated that in some embodiments, the controller 110may be implemented by one or more integrated circuits, at least in part.

The blocks of the controller 110 are configured to communicate with eachother by an interconnect, such as a bus or any other suitableinterconnect and/or by point to point communication.

The user device 100 is shown by way of example only. In alternativeembodiments, one or more of the parts may be omitted. Alternatively oradditionally, some embodiments may comprise one or more other parts.Alternatively or additionally, one or more parts may be combined.

Reference is made to FIG. 3 which schematically shows the functionalblocks of an embodiment, which may enable such game play. A user inputblock 300 is shown. This captures the user input and feeds the input toa game engine 302. This user input can be via any suitable userinterface, such as these discussed earlier.

The game engine 302 will process the information provided by the userinput. The game engine 302 (for example a game model) will determine ifa valid combination has been made.

Each object has object data 304 associated therewith. The object data304 may be stored in any suitable memory location. In some embodiments,the object data 304 may be considered to be part of the game engine andin other embodiments may be considered to be outside the game engine.The object data 304 may provide information as to the properties of anobject. These properties can include attribute information such ascolour and/or whether or not an object has a particular function such asa so-called booster function. The object data 304 may include theposition data, that is, information representing the position of theobject in the displayed image.

In some embodiments, the game engine 302 will check if the game objectsatisfies the rule or rules for a valid match or game condition. Therule or rules define whether or not a match or game condition has beensatisfied. The match or game condition will be dependent on the game.

Thus, the game engine 302 will be in control of the matching or gamemechanism. The game engine 302 will have access to data for each objectincluding its position and the at least one characteristic associatedwith the object, and will be able to determine if a match or gamecondition has been met. If a match or game condition is met, the objectsmay be removed from the game area.

A physics engine 308 is provided which is configured to control themovement of moving objects on the display 155, for example the gameobjects in the arrangement or the player object. A player object may bea game object which is displayed moving along a determined target path.The physics engine 308 may manage the movement of an object based on,for example, gravity which controls the falling of the object, a wavemechanism, collision detection, when the falling object hits anotherobject and optionally rotation calculations when the falling objectrolls, for example, down the side of the other objects. The physicsengine 308 may manage the movement of an object in dependence on adetermined target path.

The movement of the object is thus controlled by the physics engine 308,which will control the movement of objects in the game area.

The physics engine 308 may be part of the game engine 302 or separatetherefrom. In some embodiments, the physics engine function may beprovided by a physics engine in conjunction with another function,separate to the physics engine 308.

A view function 306 uses the object data to provide the displayed imagewith which the user is able to view and/or interact.

The functions of FIG. 3 may be provided by one or more of the blocks ofFIG. 1.

FIG. 2 schematically shows a system 200 according to some embodiments.The system 200 comprises a server 220 which may, in some embodiments,communicate with a database 250 through back end infrastructure 240“BEN”. In an alternative embodiment, the database 250 may be providedwithin the server 220. The database 250 may store, amongst other things,gameplay data, game player's details, profiles, statistics, etc. Inpractice, one or more databases 250 may be provided. Where more than oneserver 220 is provided, the database(s) 250 may be provided in onedatabase 250 or across two or more servers 220, 310. The server 220 mayalso have a games data function. This may comprise one or more units ofmemory to store the computer game program and user behaviour data, and aprocessor to run the games program and process the user behaviour data.

The server 220 may communicate via network 210 (for instance theinternet) to one or more user devices 100, shown in the figure by way ofexample as user devices 100 a, 100 b and 100 c, and may further provideconnections to a social network 230 such as Facebook™.

It should be appreciated that embodiments may be deployed in differentsystem architectures. For example, the computer game may be implementedas a computer game that is stored in the memory 120 of the user device100 and is run on the processor 115 of the user device 100. However, theserver 220 may handle some elements of the game in some embodiments. Byway of example only, a Java game applet may be provided to the userdevice 100 and the locally running Java applet will generate, forexample, the graphics, sounds, and user interaction for the game play onthe user device 100. Some data may be fed back to the server 220 toallow interaction with other players. The data which is fed back mayalso allow scoring and/or cross platform synchronization.

The game may be accessed through a user account, which associates userID information—such as one or more of username or names, one or morepasswords, or the like—with one or more parameters that determineaspects of gameplay. This information may be stored at a server 220which the user device 100 connects with in order to download the one ormore parameters. To access the game, the user device will provide logindetails, which may comprise account identification information. Theaccount identification information may comprise a user name andpassword, in some embodiments. The account identification informationmay be transmitted from the user device 100 to the server 220 throughthe WAN 150.

The server may use the account identification information as a key intothe database 250 (and/or other suitable database) to retrieve theparameters associated with the account identification information andtransmit these parameters to the user device. The user device may storethese parameters in local memory 120. The user is then able to play thegame having particular gameplay characteristics as determined by theparameters.

Additionally or alternatively, the parameters may be permanently storedat the user device 100 itself. In this case, there may be no need toaccess to access a remote server in order to load the parametersassociated with the user account so as to enable gameplay.

In some embodiments, the game may be played as a stand-alone game on theuser device. In these embodiments, the parameter will be stored in thememory of the user device.

An example of a data structure 900 for storing a set of parameters thatmay be stored in database 250 and/or memory 120 is shown in FIG. 8. Thisdata structure comprises a user ID 901, an indication of the game 902which the data structure is associated with, and an identification ofthe level 903 of the game that the data structure is associated with.These three elements of the data structure 900 may be used to identifythe data structure and the parameters contained therein as beingassociated with a particular user account, a particular game and aparticular level of the game. It should be appreciated that in someembodiments, the data structure may include information associated withmore than one level of a game. In these embodiments, different fieldsmay be provided for each level. Alternatively, a field may compriseinformation about one or more levels in a given field.

In alternative embodiments, the data structure may comprise gameinformation for a plurality of different games.

The data structure comprises scoring information 904 associated with thelevel. This may, for example, be high scores of the user of the deviceand/or the high scores of one or more friends of the user. In someembodiments, the high scores may be in one or different fields to thehigh scores of the user of the device.

The data structure 900 comprises information regarding boosters 905 thatmay be used by a player, and information identifying one or more friends908 of the user.

The data structure 900 further comprises a time limit 906, and/or a movelimit 907, which determine the amount of time and/or moves available tothe user in which to complete the level of the game. It should beappreciated that one or other of the time limit and move limit field maybe omitted in some embodiments. For example some games may have no timelimit but only a move limit or vice versa. Other games may have for eachlevel a time limit or a move limit. In some embodiments, the time limitand/or move limit may be specific to a particular level. The move ortime limit may be stored in conjunction with level information.

It should be appreciated that one or more of the fields shown in FIG. 8may be omitted. It should be appreciated that one or more fields may becombined into a same field. It should be appreciated that one or morefields may in fact be provided by two or more fields. Finally, one ormore additional fields may be alternatively or additionally be provided.

In some embodiments, the user account may take the form of a socialnetwork account identified by social network account identificationinformation. In this case, the user device may log the user in, usingtheir social network account details and access the game through thesocial network site. The user device may transmit account identificationinformation through the network 210 to a social network 230. In oneembodiment, the parameters determining gameplay characteristics may bestored at a database 260 associated with the social network 230. Thedatabase 260 may comprise social network user account information, suchas friends, photos, posts, etc. The social network user accountinformation may alternatively or additionally comprise the parameters.The account identification information, which is received at the socialnetwork 230 may then be used as key into a database 260 to retrieve theparameters associated with the account identification information. Thisinformation may be transmitted through the network 210 to the userdevice 100.

In an alternative embodiment, accessing the social network using theaccount identification information provides access to game parametersstored in an alternative location such as database 250.

One of the parameters determining aspects of gameplay may be a valuedetermining a total number of moves that may be made by a player of thegame during play of a level—which may be referred to as a “limit value”.There is a default value and is provided for all players of the game.This default value may be provided as part of the game code.

In some embodiments, the default value may not be provided as part ofthe data structure. In some embodiments, the data structure will onlystore for a given level a limit value if that differs from the defaultvalue. If a user has no user specific limit values, then the respectivefield in the data structure may be omitted or be empty.

In other embodiments, the default value may be provided as part of thedata structure.

As will be described in more detail, a limit value for particular levelmay be modified for a user. This new limit value will be used anytimethe user plays that level, unless that limit value is altered again (ifpermitted). The user specific limit values may be stored in the database250 and/or other data store. The user specific limit value may be storedat move limit 907 of data structure 900. Any user specific limit valuesfor each level may be transferred, in addition to other parameters, fromthe database 250 to the user device and stored in memory 120 uponloading or synchronising of the game.

Alternatively, the user device 100 may transmit a request over thenetwork 210 to the server 220 for a limit value associated with levelwhen the level is loaded. The server 220 may be configured to respond tothis request by retrieving the limit value associated with the levelfrom the database 250 and returning it to the user device 100 forstorage in memory 120 and application in the associated level.

It would be understood by the skilled person that the user account maytake any form in which information associated with the user accountcomprises parameters. The user account may be associated with a uniqueuser device and/or unique user account identification information.

In some embodiments, the game information associated with the useraccount which is stored in the database 250 is synchronised with thegame information stored in the memory 120 of the user device 100 or viceversa. This synchronisation may be periodic or occur in response to aparticular game event, e.g. the loading of a new level of the game.

In some embodiments a request for synchronisation sent from the userdevice 100 may comprise one or more timestamps indicating the time atwhich one or more parameters stored in the memory 120 were last updated.The server may be configured to compare these time stamps contained inthe request to corresponding timestamps stored in the databaseindicating the time at which corresponding parameters stored in thedatabase 250 were last updated. The server may then be configured tooverwrite any parameters stored in the database 250 for which a laterupdate is available in the memory 120 of the user device 100 with valuesof the parameters received from the user device 100.

The server may be configured to retrieve any parameters from thedatabase 250 for which earlier versions to be overwritten are present inthe memory 120 of the user device and transmit those parameters from thedatabase to the user device. The processor 115 of the user device 100may then be configured overwrite the earlier versions of the parametersstored in memory 120 with the parameters received from the server 220.It is thereby ensured that, after the synchronisation process has beencompleted, that the parameters—such as the user specific limit valueinformation for a level—that are stored in the memory 120 and thedatabase 250 are the latest versions of the parameters.

In some embodiments, the message instructing an update to the totalnumber of moves available for a level may be transmitted to the serverfrom a first device 100 a. A second device 100 c, associated with thesame user account as the first device 100 a and configured to run thesame game, may then be configured to transmit a synchronisation requestto a server, which may be server 220 or an additional server, therequest comprising user account identification information. The servermay respond to this request from the second device 100 c by accessing amemory location associated with the user account identificationinformation—which may be database 250 or an additionaldatabase—retrieving the user specific limit value information andtransmitting user specific limit value information to the second device100 c. The new value representing the user specific limit valueinformation may be stored in a memory of the second device 100 c inassociation within the level and used by the second device 100 c todetermine the maximum number of moves permitted for the same level. Thefirst and second device may be of different platforms. For example, thefirst device 100 a may be a PC, whereas the second device 100 c may be asmartphone. Hence, the user specific limit value information for a levelmay be maintained across a plurality of platforms.

FIG. 4 shows an example level of a game in accordance with someembodiments. The level 400 has a game board 410 shown on the display 155of user device 100. Shown of the game board are a series of game objectsof different types 420 a, 420 b, and 420 c. The user of the device hascontrol over a projectile 430, which is aimed by the user using, forexample, touch input or mouse input or other pointing device input. Theprocessor 115 uses the game engine 170, which is stored in the memory120 of the device, to determine the changes to be made to the projectedtrajectory 460 of the projectile 430 on the basis of the user input. Theprocessor may receive user input from the input device 165 and thencalculate a new trajectory for the projectile 430 on the basis of thisuser input and game engine data loaded from the memory 120. Afterdetermining the appropriate response on the basis of the input and thegame engine 170, the processor may then signal the graphics controller125 which causes the display 155 to show the modification of thetrajectory 340.

In response to user input, the processor 115 controls the display 155 toshow the projectile 430 move across the gameboard and make contact withone of the game objects shown at the top of the gameboard. If theprojectile is of a type, which causes a match of 3 or more differentgame objects of the same type to be created, then the matched gameobjects will be removed from the gameboard. For example, the projectile430 shown in FIG. 4 displays a pattern which matches the pattern shownon the game object 420 c. If the projectile contacts this game object420 c, the elements in the resulting match will be removed from thegameboard.

Above the gameboard is shown an indication 450 of the level of the gamecurrently in play. In this case the level is level 6. Each level of thegame may have a plurality of characteristics, dictated by a plurality ofparameters. These characteristics are exhibited by a level each time theuser plays that level. For example, one characteristic of a level of thegame may be the initial arrangements of the game objects 420 on the gameboard 410 each time a level of the game is played. Another particularcharacteristic of a level of the game may be the total number of movesavailable to the player when playing a level of the game.

It should be appreciated that embodiments are not limited to gameshaving a game have a plurality of levels. In some embodiments, the gamemay not be divided into a plurality of separate levels. In this case theparameters which determine the characteristics for that level maydetermine the characteristics for the entire game.

In one embodiment, at least one processor is configured to determine ifthere is a user specific limit value of the level being played. If sothe user specific limit value is used by the game engine to configureand set up the game to be played. If not the game engine will use thedefault limit value. In some embodiments, where there is a user specificlimit value, that will be stored with game data for a particular levelso that each time that level is played, the user specific limit valuewill be applied.

In some embodiments, on loading the game application or a level of thegame, the processor 115 may generate a request for one or more of theparameters which determine the characteristics of one or more levels ofthe game. This request may be transmitted via network interface 145 overWAN 150 to the server 220, which retrieves the requested parameters fromthe database 250 and returns these values to the user device 100. Therequested parameters may then be loaded into memory 120 and used in theexecution of the computer program instructions to determine thecharacteristics of one or more levels of the game.

During play of a level of the game, a value representative of the numberof remaining available moves that may be made by the player during playof a level of the game may be stored. When the input device 165 receivesuser input and the processor determines that a projectile is to be firedonto the game board, a counter provided by the user device may updatethe number of available moves to take account of the change. This updatemay comprise decrementing a value stored in memory 120, the valuerepresenting the number of moves available. Alternatively, this updatemay comprise incrementing a value stored in memory representing thenumber of moves already made. In some embodiments, the counter functionmay be provided by the processor 115 of the device which may beconfigured to access data stored in the memory 120 and update it toindicate that the number of moves available has decreased. In otherembodiments counter hardware (not shown) is provided to update the dataupon the user making a move in the game.

If the number of available moves reaches zero, the player is notpermitted to make any further moves on the level until the level isrestarted. In some embodiments, if the number of available reaches zero,the level of the game may automatically end. A graphical representationof the number of available moves remaining is shown displayed on thescreen in FIG. 4 as value 440.

It should be appreciated the game which is shown in FIG. 4 is just oneexample of a game. In other embodiments, different games may beprovided. It should be appreciate that what defines a move may differbetween games. In some embodiments different criteria may be consideredto a move. In the example of FIG. 4, each time a projectile is fired inresponse to user input, this is considered to be a move. In a linkerbased game, each time a user makes a valid link may be considered amove. In a switcher based game, each time a user makes a valid switchmay be considered to be a move. In a slider based game, each time a usermakes a valid slide, this may be considered to be a move. In a solitairebased game, each time a user takes a card from a card stack may beconsidered to be a move. These are only a few example of whatconstitutes a move.

Generally a game will be associated with rules which define what userinput constitutes a move. Some embodiments have a given number of movesin which to try to achieve a game objective.

FIG. 5 shows one example of a level in which it is detected that thenumber of moves available 440 has reached a predefined value. A messageis displayed. The message may inform the user that they have run out ofmoves or provide similar information. In some embodiments the predefinedvalue is equal to zero, i.e. the message is displayed when the playerruns out of moves. However, in some embodiments, the message may bedisplayed when other numbers of moves are still available. In someembodiments, the message may be triggered by an event, other than numberof moves used or remaining.

In the example shown in FIG. 5, the processor controls the display toshow a message 501, indicating to the player that there are no possiblemoves remaining and that to continue gameplay, the player can increasethe total number of moves by making a purchase. An icon 520 is shown onthe display as part of the message 510. In this example, the player canmake no further moves unless they make a purchase to increase the totalnumber of moves available to the player.

If the user selects or otherwise activates the icon using the userinterface, the number of available moves may be increased. In responseto user input associated with the icon 520 of the message, the processor115 of the user device may access memory 120 and store a user specificvalue representing the total number of moves that may be made by theuser when playing the level of the game. Alternatively, this may bestored as a value indicating the number of extra moves in addition tothe default number of moves. This value may be stored as part of a setof parameters associated with a user account. For example, theparameters are provided in a data structure such as data structure 900shown in FIG. 8.

In one embodiment, the user device 100 may additionally transmit amessage to a server 220, requesting an update to the correspondinginformation stored for the user in the server side database 250.

In some embodiments, the extra moves may be obtained in response to apayment being made. For example, in response to user input associatedwith the icon 520 of the message, the user device transmits a requestfor an increased number of moves over WAN 150 to a remote server, forexample, server 220. The request may comprise instructions enabling aremote server to debit an account of the player with a sum of money inexchange for the increase in moves. In some embodiments, the currency isreal currency and in other embodiments the currency may be a virtualcurrency. The request may comprise account identification information,such as a user ID for a social network account, and an indication of thelevel of the game which is currently in play, for example, level 6.

Upon receiving the request, the server 220 may access the database 250and use the account identification information as a key into a database250 to locate the information stored in association with the useraccount. The server 220 update the data for the user to reflect theadditional moves available for the given level. In one embodiment, theuser device may await confirmation from the server 220 before theadditional moves can be applied. Upon receiving the confirmation fromthe server 220, the user specific default limit information may bestored and used for the particular level.

By storing the user specific limit value information in memory 120 inassociation with level information, this new user specific total numberof moves available may be applied for the same level in subsequent playsof the level. For example, if after the default limit value is updatedto the new user specific limit value during play of the level of game,the processor determines an end game condition (e.g. in response to userinput or in response to the move count reaching the new limit value),the new total number of moves available is used when the user replaysthat level. If the user device then again loads the same level of thegame, the total number of moves available will be the user specifictotal number of moves and not the default number of moves. In this way,the user has a version of the game which is specific to that user. Theuser does not have to make any changes to the game each time the userplays the game in order to get that version of the game which isspecific to the user.

Reference is now made to FIG. 6, which illustrates a method 600—whichmay be implemented by user device 100—for determining whether or not thenumber of moves made has reached a predefined value and thereforewhether a consequent message should be displayed.

At step 610, in response to appropriate user input at the input device165, a level of the game is loaded for play. This step comprises theprocessor 115 loading from the memory 120, the necessary game datarequired to play the level. This game data includes for example, gamerules, and graphics information. The processor may also access the datastored in memory 120 associated with the user account. This data maycomprise one or more parameters determining gameplay characteristics forthe level that are specific to the user account. As explained above, theone or more parameters may be stored in a data structure such as datastructure 900 shown in FIG. 8. The processor may determine whether ornot an updated value for the total number of moves is to be used insteadof the default number of moves. If so, the user specific number of moveis loaded and applied for the level of the game. If there is no userspecific limit value information for the level, the processor 115 willuse the default value for the total number of moves available stored inthe game data.

In one embodiment, prior to the selection of the level, the memory 120may comprise all of the necessary parameters, game rules, and graphicsinformation necessary to run the game and no synchronisation with theremote database 250 is necessary. In this case, the processor 115 isconfigured to execute the instructions and use this information toprovide the game. Alternatively, in response to the user input at theinput device 165 selecting the level for play, the user device 100 maytransmit a request for synchronisation to the server 220, as describedabove, so as to ensure that the latest version of the parameters and anyother necessary information for the level to run are stored in thememory 120. The processor 115 then executes the instructions stored inmemory 120 to control the display 155 and audio device 160 and providethe game level.

At step 620, the processor 115 awaits user input.

At step 630, the user input is received at the input device 165indicating a move to be made. The input device 165, upon receiving theuser input may be configured to cause the processor 115 to determine aresponse. The processor 115 may determine the change in position orvelocity of game objects 420 or projectiles 430 on the game board inresponse to the user input and control the display 155 and audio device160 to output appropriate visual and audio feedback. A counter or countfunction is provided to update the number of moves available upon theuser making a move. In some embodiments, the function of the counter maybe provided by the processor 115 which accesses a value representing thenumber of available moves stored in the memory 120 and updates thisvalue. In other embodiments, the counter may be provided by hardwareother than the processor 115.

At step 640, the processor is configured to compare the total number ofmoves available (either the default value or the user specific value)and compare this value to the number of moves made.

At step 650, if it is determined that the number of made moves is equalto the total number of available moves. If not the method, the methodreturns to step 620 where the user device 100 awaits further user input.

If, on the other hand, it is determined by the processor 115 that themade moves is equal to the total number of moves the method proceeds tostep 660. In some embodiments, the comparison may instead check if thereis a predefined difference between the number of moves made and thetotal number of moves available.

At step 660, the processor 115 signals the graphics controller 125 todisplay a message, for example message 510 which asks the user whetherthey wish to purchase more moves for the level. The graphics controller125 controls the display 155 to display the message 510. The displayedmessage 510 may comprise an icon 520. Interaction via the user interfacewith the icon 520 allows the user to purchase more moves. In responseuser input associated with the icon 520, the method proceeds to step670.

In some embodiments, the message displayed in 510 may be displayed whenthe user is out of moves. In this case, if user input via the inputdevice 165 is not detected by the processor 115 within a predefined timelimit then the processor 115 may cause the level to end. Alternativelyor additionally, the processor 115 may end the level in response to analternative form of user input, such as user input associated with adifferent portion of display 155, such as cross 530.

At step 670, assuming the user has interacted with the icon, via theuser interface, the processor 115 updates the number of moves availablefor that level and the method loops back to step 620. Additionally theprocessor is configured to store or update user specific limit valueinformation to reflect the additional moves. This information is storedin association with respective level information. The information isstored in memory in the user device and/or in a database on the serverside.

After step 670, the method may then proceed back to step 620, wherefollowing the increase in the number of moves available, the user maycontinue playing the game by making another move.

After the level of the game had ended, the method may then proceed backto step 610, where the user device 100 subsequently loads the level ofthe device. The processor will use the user specific limit valueinformation so the game will now have the user specific total number ofmoves.

The user device 100 may transmit the user specific limit valueinformation to the server 220 for storage in a database 250. FIG. 7shows a method 700 implemented by the user device 100 and server whichmay be used to update the database 250. In some embodiments, this method700 may continue on from step 670 of method 600.

At step 710, the processor 115 of the user device generates the requestto increase the limit value associated with the particular level of thegame in question. The request may comprise user account identificationinformation, level identification information. The request is passed bythe processor to the network interface 145 where it is forwarded overthe network 210 to the server 220.

The request may comprise an instruction to debit an account of the user.It would be understood that embodiments are not limited to the casewhere the user makes a cash payment in exchange for an increase to thelimit value. In other embodiments, an exchange of virtual currency maybe made in exchange for the increase to the limit value. In otherembodiments, no transfer of any currency may be required in order toachieve an increase in the limit value.

At step 720, the server 220 receives the request to increase the numberof moves available. The server accesses the database 250 and, using theuser account identification information from the request as a key,locates a memory location associated with the user account. The datastored in the memory may be updated to include user specific limit valueinformation associated with the extra moves. The server may overwritepreviously stored user specific limit value information if the userspecific limit value has been updated.

Steps 730 and 740 may optionally be incorporated into the method 700.These steps are incorporated into the method in the case that the userdevice 100 is required to receive confirmation that the updated userspecific limit value information is stored in the database 250 beforethe updated user specific limit value information is applied.

At step 730, the server transmits confirmation that the user specificlimit value information has been stored in the database 250 to the userdevice 100.

At step 740, the user device receives this confirmation. In response,the user device 100, the processor 115 may then accesses the memory 120and writes an indication that the user specific limit value informationshould be applied for the level. Hence, when the user device 100subsequently loads the same level of the game, the number of moves thatmay be made during play of the level will be determined by the userspecific limit value information.

In some embodiments the methods illustrated in FIGS. 6, and 7 may berepeated a plurality of times for the same level so as to increase thetotal number of available moves a number of times. For example, forlevel 6, the initial total number of available moves stored in memory120 may be 30. It may be increased to 40 in response to a user inputassociated with a message. The value for the total number of availablemoves stored in the memory 120 may then be increased again, this time to50, in response to a second user input associated with a message inaccordance with the method illustrated in FIG. 6. It should beappreciated that the initial total number of moves may of course be moreor less than 30. The number of moves by which the initial number ofmoves is increased may be more or less than 10. It should be appreciatedthat where there is a further increase of moves, this may be the same asor different from the initial increase of moves.

In other embodiments, the methods illustrated in FIGS. 6, and 7 may beperformed only once for a particular level of the game. As describedabove, the user device 100 updates the user specific limit valueinformation I stored in the memory 120. In this case the user device 100may determine, on the basis of the presence of the user specific limitvalue information, that the total number of available moves for a levelhas been previously updated from an initial value. On the basis of thisdetermination, the user device 100 will not update the user specificlimit value information again.

Some embodiments may have the advantage that the maximum number of movesthat may be made by a user when playing a level of the game may bemodified during the play of a level such that the change to this settingis maintained when the user engages in subsequent play of the samelevel. This may address some problems that a number of choices orgameplay options from the provider or their partners are offered to aplayer and these preferences are be applied whenever the user begins anew game or level of a game. Some embodiments allow a gaming system totake account of user preferences for individual levels of a game whenthat level of the game is subsequently loaded.

Although the embodiments described above relate to updating a limit onthe number of moves available to the user during play of a level of thegame, it should be appreciated that the embodiments are not so limited.In another embodiment, a time limit value may be stored in memory 120 inassociation with a level of the game. A timer may be provided as part ofthe user device, which measures the amount of time elapsed during playof a level of the game. If the elapsed time reaches the time limit theuser may be unable to make any further moves and the level may end. Thetime limit may be updated using a method analogous to that used toupdate the total number of allowable moves as described above.Specifically, in response to user input, the processor 115 of the devicemay access memory 120 and store in association with the levelinformation, an indication of a second amount of time. This indicationmay be stored, for example, at time limit 906 of data structure 900.When the level of the game is subsequently loaded, the time limitapplied to the level will comprise the second amount of time and theoriginal time limit.

In additional embodiments, the method may be applied to gameplayparameters other than time limits or moves. For example, the method maybe used to update the availability of in-game items for a level.

Various methods and devices have been described. It should beappreciated that these methods may be implemented in apparatus ordevices comprising any suitable circuitry. Some embodiments may beimplemented by at least one memory and at least one processor. Thememory is provided by memory circuitry and the processor is provided byprocessor circuitry. Some embodiments may be provided by a computerprogram running on the at least one processor. The computer program maycomprise computer implemented instructions which are stored in the atleast one memory and which may be run on the at least one processor. Acomputer program product may be provided which comprises computerprogram product comprising code embodied on a computer-readable mediumwhich is configured to be executed on a processor of the computer oruser device. In some embodiments, a non-transitory computer readablestorage device may be provided to store program code instructions that,when executed by at least one processor causes any of the abovedescribed methods to be performed.

A person skilled in the art will realise that the different approachesto implementing the methods and device considerations herein are notexhaustive, and that which is described comprises certain embodiments.It is possible to implement the above in a number of variations withoutdeparting from the spirit or scope of the invention.

1. A computer implemented method, the method being performed in acomputing device comprising one or more processors, a timer, at leastone memory, a display configured to display computer game graphics for acomputer game, the method being performed by executing computer code onthe one or more processors to perform the steps of: controlling thedisplay to show a game area, the game area having a plurality of gameobjects configured to be controlled in response to a first user inputmaking a move; using the timer to determine an amount of time elapsedduring play of a level of the game, wherein no further moves can be madeif the amount of time elapsed reaches a first amount of time; responsiveto a second user input, providing a second amount of time; and storinginformation associated with said second amount of time such that whensaid game is played again, a time limit for the level comprises thefirst amount of time and the second amount of time.
 2. A computerimplemented method as claimed in claim 1, comprising, for a second playof the level of the game: controlling the display to show the game area,the game area having the plurality of game objects configured to becontrolled by the one or more processors in response to a third userinput; and using the timer to determine an amount of time elapsed duringplay of the level of the game, wherein no further moves can be made ifthe amount of time elapsed reaches the time limit comprising the firstamount of time and the second amount of time.
 3. A computer implementedmethod as claimed in claim 1, wherein the computer game comprises aplurality of levels, said second amount of time being provided for aparticular level.
 4. A computer implemented method as claimed in claim1, comprising storing information associated with the second amount oftime in association with information on the particular level.
 5. Amethod as claimed in claim 2, comprising: responsive to a fourth userinput, providing a third amount of time; and storing informationassociated with said third amount of time such that when said game isplayed again a time limit comprises the first amount of time, the secondamount of time, and the third amount of time.
 6. The method as claimedin claim 1, comprising storing said information associated with saidsecond amount of time in association with identification informationassociated with the user.
 7. The method as claimed in claim 1,comprising causing said information to be sent to a server for storingin a server side database.
 8. The method as claimed in claim 1,comprising displaying a message on said display when a differencebetween the first amount of time and the amount of time elapsed is apredetermined value, said message providing information associated withobtaining said second amount of time.
 9. The method as claimed in claim8, comprising displaying said message with an icon which is selectableby user input, said second amount of time being provided in response toselection of said icon.
 10. The method as claimed in claim 8, whereinthe predetermined value is zero.
 11. A computer implemented method, themethod being performed in a server comprising one or more processorshaving access to a network and a database, the server being configuredto communicate over the network with a user device adapted to play acomputer game having a time limit value determining a maximum amount oftime, the method being performed by executing computer code on the oneor more processors to perform the steps of: receiving from a user devicea message, the message comprising user identification information andupdated time limit information; accessing in the database a memorylocation associated with the user identification information; andstoring information associated with an updated time limit information inthe database in the memory location.
 12. A computer implemented methodas claimed in claim 11, further comprising: transmitting a message tothe user device, said message for configuring the user device such thatwhen said game is played again, a time limit is determined by theupdated time limit information, wherein no further moves can be made ifthe amount of time elapsed reaches the updated time limit information.13. An apparatus comprising at least one processor, at least one memory,a display, and a timer, the at least one memory comprising computercode, the at least one processor being configured to execute thecomputer code to cause the apparatus to: control the display to show agame area, the game area having a plurality of game objects configuredto be controlled in response to a first user input making a move; usethe timer to determine an amount of time elapsed during play of a levelof the game, wherein no further moves can be made if the amount of timeelapsed reaches a first amount of time; responsive to a second userinput, provide a second amount of time; and store, in said at least onememory, information associated with said second amount of time such thatwhen said game is played again, a time limit for the level comprises thefirst amount of time and the second amount of time.
 14. An apparatuscomprising at least one processor and at least one memory, the apparatushaving access to a network and a database, the apparatus beingconfigured to communicate over the network with a user device adapted toplay a computer game having a time limit value determining a maximumamount of time, the at least one memory comprising computer code, the atleast one processor being configured to execute the computer code tocause the apparatus to: receive, from the user device, a message, themessage comprising user identification information and updated timelimit information; access, in the database, a memory location associatedwith the user identification information; and store informationassociated with an updated time limit information in the database in thememory location.